<?php
//数据库操作基类

class DbSql {
	private $mLink;  //定义数据库连接变量

	/**
	 * 功能：初始化构造函数，连接数据库
	 * 参数：无
	 * 返回：无
	 */
	public function __construct() {
        $link = mysql_connect(HOSTNAME , USERNAME , PASSWORD);
      //  if($link) echo mysql_error();
        //当无异常时，$link是个资源数据类型
        mysql_query("set names ".CHARSET);
        mysql_select_db(DBNAME);
        $this->mLink = $link;


	}

	/**
	 * 功能：析构方法，释放资源，关闭数据库连接
	 * 返回：无
	 */
	public function __destruct() {
		//@mysql_close($this->mLink);
	}


	/**
	 * 功能：数据库查询函数
	 * 参数：$sql SQL语句
	 * 返回：二维数组或false
	 */
	public function select($sql) {
        //echo $sql;die;
		if (empty($this->mLink)) return false;			//如果连接为空则返回FALSE
		$result = mysql_query($sql,$this->mLink);

		if(!$result)  return false;   					//如果查询失败则返回FALSE
		$count = 0;
		$arr = array();
		while ($row = mysql_fetch_array($result)) {	  //把查询结果重组成一个二维数组
			$arr[] = $row;
		}

		mysql_free_result($result);
		return $arr;
	}

	/**
	 * 功能：数据插入/更新/删除 函数
	 * 参数：$sql SQL语句
	 * 返回：true或者false
	 * 备注：mysql_query($sql)函数中的sql语句为delete，insert，update时，成功返回true，失败返回false,执行select语句，成功返回资源，失败返回false
	 */
	public function execute($sql) {
		if(empty($this->mLink)) return false;   	//如果连接为空则返回FALSE
		$result = mysql_query($sql);
		return $result;
	}

}
?>
